<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>测试报告</title>
        <link rel="stylesheet" href="https://cdn.staticfile.org/twitter-bootstrap/4.5.0/css/bootstrap.min.css">
    <script src=" https://cdn.staticfile.org/jquery/2.0.0/jquery.min.js"></script>
    <script src="https://cdn.staticfile.org/echarts/5.1.2/echarts.min.js"></script>
    <!--    页面样式-->
    <style type="text/css">
        /*标题样式*/
        .title {
            width: auto;
            height: 60px;
            text-align: center;
            font: bolder 38px/60px "Microsoft YaHei UI";
        }

        /*汇总信息样式*/
        .summary {
            width: 90%;
            position: absolute;
            top: 120px;
            margin-left: 5%;

        }

        .text-left {
            font: bolder 20px/30px "Microsoft YaHei UI";
        }

        .left {
            width: 50%;
            float: left;

        }

        .right {
            width: 50%;
            float: right;

        }

        .desc {
            float: left;
            width: 100%;
        }

        .list-group-item span {
            font: normal 16px/38px "Microsoft YaHei UI";
            padding: 30px;

        }

        .list-group-item {
            position: relative;
            display: block;
            padding: .4rem 1.25rem;
            background-color: #fff;
            border: 1px solid rgba(0, 0, 0, .125);
        }

        /* 执行信息样式   */
        .test_info {
            width: 90%;
            position: absolute;
            top: 900px;
            margin-left: 5%;

            color: #28a745 !important;
        }

        .table td, th {
            border: solid 2px rgba(9, 122, 51, 0.11) !important;
            padding: 0;
            line-height: 40px;
            text-align: center;

        }


        select {
            border: 0;
            padding: 0;
            margin: 0;
            height: 2em;
            width: 8em;
            margin-left: 2em;
        }

        option {
            text-align: center;
            height: 36px;
            font: none 18px/36px "Microsoft YaHei UI";
            color: #28a745 !important;
        }

        .test_log {
            background: rgba(163, 171, 189, 0.15);
            width: 100%;
            height: 50px;
            border-top: none;
            border-bottom: none;
            display: none;
            text-align: left;
        }

        .test_log td {
            text-align: left;
            height: 30px;
            margin: 0;
            padding-left: 3em;
            padding-right: 3em;
            font: none 18px/24px "Microsoft YaHei UI";
            color: #9e141a;
        }

        pre {
            margin: 0;
            white-space: pre-wrap;
            white-space: -moz-pre-wrap;
            white-space: -o-pre-wrap;
            word-wrap: break-word;
        }

        /*    测试图表显示*/
        .char {
            width: 90%;
            position: absolute;
            top: 450px;
            margin-left: 5%;
            color: #28a745 !important;
        }

    </style>

</head>
<body>

<!--报告标题-->
<div class="title text-success">
    <div class="shadow-lg p-3 mb-5 bg-white rounded">测试报告</div>
</div>

<!--汇总信息-->
<div class="summary">
    <p class="text-left text-success">测试结果汇总</p>
    <div class="left">
        <ul class="list-group">
            <li class="list-group-item">
                <button type="button" class="btn btn-success">测试人员</button>
                <span class="text-dark">小测试</span>
            </li>
            <li class="list-group-item">
                <button type="button" class="btn btn-success">开始时间</button>
                <span class="text-dark">2024-11-21 14:46:58</span>
            </li>
            <li class="list-group-item">
                <button type="button" class="btn btn-success">执行时间</button>
                <span class="text-dark">1.508543 S</span>
            </li>
            <li class="list-group-item">
                <button type="button" class="btn btn-success">用例总数</button>
                <span class="text-dark">8</span>
            </li>


        </ul>
    </div>
    <div class="right">
        <ul class="list-group">

            <li class="list-group-item">
                <button type="button" class="btn btn-success">成功用例</button>
                <span class="text-success">6</span>
            </li>
            <li class="list-group-item">
                <button type="button" class="btn btn-danger">失败用例</button>
                <span class="text-warning">2</span>
            </li>
            <li class="list-group-item">
                <button type="button" class="btn btn-warning">错误用例</button>
                <span class="text-danger">0</span>
            </li>
            <li class="list-group-item">
                <button type="button" class="btn btn-secondary">跳过用例</button>
                <span class="text-secondary">0</span>
            </li>
        </ul>
    </div>
    <div class="desc">
        <ul class="list-group">
            <li class="list-group-item">
                <button type="button" class="btn btn-success">描述信息</button>
                <span class="text-secondary">无</span>
            </li>
        </ul>
    </div>
</div>

<!--测试图表-->
<div class="char">
    <p class="text-left text-success">图表展示</p>
    <div id="char2" style="width: 49%;height: 400px;float: left"></div>
    <div id="char" style="width: 49%;height: 400px ;float: left"></div>
</div>

<!--详细信息-->
<div class="test_info">

    <p class="text-left text-success">详细信息</p>
    <div class="table_data">

        <table class="table">
            <thead class="bg-success text-light">
            <tr>
                <th scope="col" style="width: 5%;padding: 0">编号</th>
                <th scope="col" style="width: 20%;padding: 0">
                    <span>用例模块</span>
                    <select id="testClass">
                        <option>所有</option>
                        
                        <option value="caseexternaApitest_createProjectByGitInfopy">case\externaApi\test_createProjectByGitInfo.py</option>
                        
                        <option value="caseexternaApitest_compareResultpy">case\externaApi\test_compareResult.py</option>
                        
                    </select>
                </th>
                <th scope="col" style="width: 15%;padding: 0">测试方法</th>
                <th scope="col" style="width: 20%;padding: 0">用例描述</th>
                <th scope="col" style="width: 10%;padding: 0">执行时间</th>
                <th scope="col" style="width: 20%;padding: 0">

                    <span>执行结果</span>
                    <select id="testResult">
                        <option>所有</option>
                        <option class="text-success">成功</option>
                        <option class="text-warning">失败</option>
                        <option class="text-danger">错误</option>
                        <option class="text-info">跳过</option>
                    </select>

                </th>
                <th scope="col" style="width: 10%;padding: 0">详细信息</th>
            </tr>
            </thead>
            <tbody>
            
            <tr >


                <td>1</td>
                <td class="caseexternaApitest_compareResultpy">case\externaApi\test_compareResult.py</td>
                <td>TestCodeSecAPI.test_compareResult</td>
                <td>None</td>
                <td>0.103066</td>
                
                <td class="text-warning">失败</td>
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="contact"
                                       aria-selected="false" style="padding: 0 16px">异常信息</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px">[31m[1mERROR   [0m ERROR:CodeSecTool.py:262 --------------------------------------------------请求错误：失败。--------------------------------------------------
[31m[1mERROR   [0m ERROR:CodeSecTool.py:269 请求url：http://192.168.2.74:5001/cs/api/v4/project/7a100162-8d23-4df9-aff8-1eee352d67ab/task/0a5a3869-3dee-4c7c-adbe-f0659be809a1/compareResult
[31m[1mERROR   [0m ERROR:CodeSecTool.py:270 请求头：
{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf',
 'lang': 'zh-CN',
 'x-cs-nonce': 'crx123456',
 'x-cs-signature': 'd6e0b994e59dfdb29e1d62f2cc661b1f46e170a5d195a4cecf08b83170eec177',
 'x-cs-timestamp': '1732171618710'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:271 请求参数：
{'lastRecordId': '4ef102d6-f462-49fc-b41b-4365fb54faa5',
 'recordId': '419f6d23-05dd-486b-823a-455c6c381c6c'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:273 验签拼接参数：
%slastRecordId=4ef102d6-f462-49fc-b41b-4365fb54faa5&recordId=419f6d23-05dd-486b-823a-455c6c381c6c&7a100162-8d23-4df9-aff8-1eee352d67ab&0a5a3869-3dee-4c7c-adbe-f0659be809a1&eyJhbGciOiJIUzUxMiJ9.eyJub25jZSI6ImY1NGUwNmVmLTZiYTEtNGZmZS1iMzBlLTc1OThkZTJjZTVkOSIsInN1YiI6ImZiOWQ2MDMyLWUzZmYtNDM1Ny04YzQyLTE4YTE3ZmQ4NTViZiJ9.jZebMQ9qWi7f_X_TVUPhhpdT2O7bOoPTVZQb9PLmFVxEw4lZACJtsliyJFppRXcr3eQU6AewgSPbO-EAqSmHOA&1732171618765&crx123456

[31m[1mERROR   [0m ERROR:CodeSecTool.py:274 返回内容：
{'code': 'B500', 'message': '失败。', 'status': False}</pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">
请求接口：http://192.168.2.74:5001/cs/api/v4/project/7a100162-8d23-4df9-aff8-1eee352d67ab/task/0a5a3869-3dee-4c7c-adbe-f0659be809a1/compareResult 
请求头：{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf', 'x-cs-timestamp': '1732171618710', 'x-cs-nonce': 'crx123456', 'x-cs-signature': 'd6e0b994e59dfdb29e1d62f2cc661b1f46e170a5d195a4cecf08b83170eec177', 'lang': 'zh-CN'}
请求参数：{'lastRecordId': '4ef102d6-f462-49fc-b41b-4365fb54faa5', 'recordId': '419f6d23-05dd-486b-823a-455c6c381c6c'}
响应：{'status': False, 'code': 'B500', 'message': '失败。'}
</pre>
                                </div>
                                
                                <div class="tab-pane fade " role="tabpanel" aria-labelledby="home-tab">
                                    <pre style="line-height: 18px">self = <CodesecApi.case.externaApi.test_compareResult.TestCodeSecAPI object at 0x0000023E74C69A00>

    def test_compareResult(self):
        base_path = f"/project/{projectUuid}/task/{appId}/compareResult"
        url = base_url + base_path
        parameter = {
            "lastRecordId": "4ef102d6-f462-49fc-b41b-4365fb54faa5",
            "recordId": "419f6d23-05dd-486b-823a-455c6c381c6c"
        }
        response = send_request(url, "get", parameter, base_path)
>       assert "成功" in response["message"]
E       AssertionError: assert '成功' in '失败。'

case\externaApi\test_compareResult.py:42: AssertionError</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            
            <tr >


                <td>2</td>
                <td class="caseexternaApitest_compareResultpy">case\externaApi\test_compareResult.py</td>
                <td>TestCodeSecAPI.test_compareVulDetailInfo</td>
                <td>None</td>
                <td>0.111467</td>
                
                <td class="text-warning">失败</td>
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="contact"
                                       aria-selected="false" style="padding: 0 16px">异常信息</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px">[31m[1mERROR   [0m ERROR:CodeSecTool.py:262 --------------------------------------------------请求错误：失败。--------------------------------------------------
[31m[1mERROR   [0m ERROR:CodeSecTool.py:269 请求url：http://192.168.2.74:5001/cs/api/v4/project/7a100162-8d23-4df9-aff8-1eee352d67ab/task/0a5a3869-3dee-4c7c-adbe-f0659be809a1/compareVulDetailInfo
[31m[1mERROR   [0m ERROR:CodeSecTool.py:270 请求头：
{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf',
 'lang': 'zh-CN',
 'x-cs-nonce': 'crx123456',
 'x-cs-signature': '1638e666b7e7a967fd8dc52afeb8817a57368a076992ba35bad3a26be1489ebe',
 'x-cs-timestamp': '1732171618916'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:271 请求参数：
{'lastRecordId': '4ef102d6-f462-49fc-b41b-4365fb54faa5',
 'recordId': '419f6d23-05dd-486b-823a-455c6c381c6c'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:273 验签拼接参数：
%slastRecordId=4ef102d6-f462-49fc-b41b-4365fb54faa5&recordId=419f6d23-05dd-486b-823a-455c6c381c6c&7a100162-8d23-4df9-aff8-1eee352d67ab&0a5a3869-3dee-4c7c-adbe-f0659be809a1&eyJhbGciOiJIUzUxMiJ9.eyJub25jZSI6ImY1NGUwNmVmLTZiYTEtNGZmZS1iMzBlLTc1OThkZTJjZTVkOSIsInN1YiI6ImZiOWQ2MDMyLWUzZmYtNDM1Ny04YzQyLTE4YTE3ZmQ4NTViZiJ9.jZebMQ9qWi7f_X_TVUPhhpdT2O7bOoPTVZQb9PLmFVxEw4lZACJtsliyJFppRXcr3eQU6AewgSPbO-EAqSmHOA&1732171618977&crx123456

[31m[1mERROR   [0m ERROR:CodeSecTool.py:274 返回内容：
{'code': 'B500', 'message': '失败。', 'status': False}</pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">
请求接口：http://192.168.2.74:5001/cs/api/v4/project/7a100162-8d23-4df9-aff8-1eee352d67ab/task/0a5a3869-3dee-4c7c-adbe-f0659be809a1/compareVulDetailInfo 
请求头：{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf', 'x-cs-timestamp': '1732171618916', 'x-cs-nonce': 'crx123456', 'x-cs-signature': '1638e666b7e7a967fd8dc52afeb8817a57368a076992ba35bad3a26be1489ebe', 'lang': 'zh-CN'}
请求参数：{'lastRecordId': '4ef102d6-f462-49fc-b41b-4365fb54faa5', 'recordId': '419f6d23-05dd-486b-823a-455c6c381c6c'}
响应：{'status': False, 'code': 'B500', 'message': '失败。'}
</pre>
                                </div>
                                
                                <div class="tab-pane fade " role="tabpanel" aria-labelledby="home-tab">
                                    <pre style="line-height: 18px">self = <CodesecApi.case.externaApi.test_compareResult.TestCodeSecAPI object at 0x0000023E790357C0>

    def test_compareVulDetailInfo(self):
        base_path = f"/project/{projectUuid}/task/{appId}/compareVulDetailInfo"
        url = base_url + base_path
        parameter = {
            "lastRecordId": "4ef102d6-f462-49fc-b41b-4365fb54faa5",
            "recordId": "419f6d23-05dd-486b-823a-455c6c381c6c"
        }
        response = send_request(url, "get", parameter, base_path)
>       assert "成功" in response["message"]
E       AssertionError: assert '成功' in '失败。'

case\externaApi\test_compareResult.py:53: AssertionError</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            
            <tr >


                <td>3</td>
                <td class="caseexternaApitest_createProjectByGitInfopy">case\externaApi\test_createProjectByGitInfo.py</td>
                <td>TestCodeSecAPI.test_prev</td>
                <td>None</td>
                <td>0.000473</td>
                
                    
                    <td class="text-success">通过</td>
                    
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px"></pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">Executing SQL: delete from project where project_desc like '%接口创建项目%' and status_static_code !='3';
Affected rows: 39
Executing SQL: delete from project where name like '%projectDesc%' and status_static_code !='3';
Affected rows: 6
前置任务：SQL执行成功！
</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            
            <tr >


                <td>4</td>
                <td class="caseexternaApitest_createProjectByGitInfopy">case\externaApi\test_createProjectByGitInfo.py</td>
                <td>TestCodeSecAPI.test_createProjectByGitInfo</td>
                <td>projectName_none</td>
                <td>0.099195</td>
                
                    
                    <td class="text-success">通过</td>
                    
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px">[31m[1mERROR   [0m ERROR:CodeSecTool.py:262 --------------------------------------------------请求错误：projectName：该字段不能为空。--------------------------------------------------
[31m[1mERROR   [0m ERROR:CodeSecTool.py:269 请求url：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo
[31m[1mERROR   [0m ERROR:CodeSecTool.py:270 请求头：
{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf',
 'lang': 'zh-CN',
 'x-cs-nonce': 'crx123456',
 'x-cs-signature': '31ed1e8a78f1b47cc2318711014662ddcaf35d22943c5a38793ef7a0dd7b37e5',
 'x-cs-timestamp': '1732171619066'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:271 请求参数：
{'authenticationMethod': '0',
 'branch': 'main',
 'callBackUrl': '',
 'checkCommitId': '',
 'commitId': '',
 'depotId': '',
 'extraMark': '',
 'fastScan': '',
 'fileFilter': '',
 'gitType': '3',
 'isIncrScan': '',
 'isOpenDepend': '',
 'isTokenEncrypt': '',
 'language': '1',
 'name': 'username',
 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac',
 'password': 'Yc+zAqWaWB+/BHxvgZ22se5b034clkOBqo2MFsvFiNHTj1GC8V9KG94yTzjI8UF1p0EN/wLzBHGjkIezY2LNFnydwOj8JtFPNqhW5vA20lkFxD8jGt70vP8/tJFSIXYjXK4ENr15O+mQl8S+MOfp8B2HYDJN6eFFD5xCFi4EHzY=',
 'projectDesc': '接口创建项目：projectName不传',
 'pullFileName': '',
 'ruleSetId': '',
 'tag': '',
 'type': '1',
 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git',
 'urlHead': '0'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:273 验签拼接参数：
%sauthenticationMethod=0&branch=main&gitType=3&language=1&name=username&orgUuid=00a7b33e-f075-4758-9ef0-d1bb989748ac&password=Yc+zAqWaWB+/BHxvgZ22se5b034clkOBqo2MFsvFiNHTj1GC8V9KG94yTzjI8UF1p0EN/wLzBHGjkIezY2LNFnydwOj8JtFPNqhW5vA20lkFxD8jGt70vP8/tJFSIXYjXK4ENr15O+mQl8S+MOfp8B2HYDJN6eFFD5xCFi4EHzY=&projectDesc=接口创建项目：projectName不传&type=1&url=http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git&urlHead=0&eyJhbGciOiJIUzUxMiJ9.eyJub25jZSI6ImY1NGUwNmVmLTZiYTEtNGZmZS1iMzBlLTc1OThkZTJjZTVkOSIsInN1YiI6ImZiOWQ2MDMyLWUzZmYtNDM1Ny04YzQyLTE4YTE3ZmQ4NTViZiJ9.jZebMQ9qWi7f_X_TVUPhhpdT2O7bOoPTVZQb9PLmFVxEw4lZACJtsliyJFppRXcr3eQU6AewgSPbO-EAqSmHOA&1732171619122&crx123456

[31m[1mERROR   [0m ERROR:CodeSecTool.py:274 返回内容：
{'code': 'B500', 'message': 'projectName：该字段不能为空。', 'status': False}</pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">
请求接口：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo 
请求头：{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf', 'x-cs-timestamp': '1732171619066', 'x-cs-nonce': 'crx123456', 'x-cs-signature': '31ed1e8a78f1b47cc2318711014662ddcaf35d22943c5a38793ef7a0dd7b37e5', 'lang': 'zh-CN'}
请求参数：{'gitType': '3', 'authenticationMethod': '0', 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git', 'projectDesc': '接口创建项目：projectName不传', 'urlHead': '0', 'isTokenEncrypt': '', 'branch': 'main', 'tag': '', 'checkCommitId': '', 'commitId': '', 'extraMark': '', 'fileFilter': '', 'callBackUrl': '', 'language': '1', 'type': '1', 'isOpenDepend': '', 'depotId': '', 'pullFileName': '', 'ruleSetId': '', 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac', 'fastScan': '', 'isIncrScan': '', 'name': 'username', 'password': 'Yc+zAqWaWB+/BHxvgZ22se5b034clkOBqo2MFsvFiNHTj1GC8V9KG94yTzjI8UF1p0EN/wLzBHGjkIezY2LNFnydwOj8JtFPNqhW5vA20lkFxD8jGt70vP8/tJFSIXYjXK4ENr15O+mQl8S+MOfp8B2HYDJN6eFFD5xCFi4EHzY='}
响应：{'status': False, 'code': 'B500', 'message': 'projectName：该字段不能为空。'}
</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            
            <tr >


                <td>5</td>
                <td class="caseexternaApitest_createProjectByGitInfopy">case\externaApi\test_createProjectByGitInfo.py</td>
                <td>TestCodeSecAPI.test_createProjectByGitInfo</td>
                <td>projectName_null</td>
                <td>0.098453</td>
                
                    
                    <td class="text-success">通过</td>
                    
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px">[31m[1mERROR   [0m ERROR:CodeSecTool.py:262 --------------------------------------------------请求错误：projectName：该字段不能为空。, 项目名称必须由2-512个字符组成。--------------------------------------------------
[31m[1mERROR   [0m ERROR:CodeSecTool.py:269 请求url：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo
[31m[1mERROR   [0m ERROR:CodeSecTool.py:270 请求头：
{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf',
 'lang': 'zh-CN',
 'x-cs-nonce': 'crx123456',
 'x-cs-signature': '784e00ff74c21a681d4631e9dcea090921e42817d380b370b33bdbe8634bb04e',
 'x-cs-timestamp': '1732171619166'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:271 请求参数：
{'authenticationMethod': '0',
 'branch': 'main',
 'callBackUrl': '',
 'checkCommitId': '',
 'commitId': '',
 'depotId': '',
 'extraMark': '',
 'fastScan': '',
 'fileFilter': '',
 'gitType': '3',
 'isIncrScan': '',
 'isOpenDepend': '',
 'isTokenEncrypt': '',
 'language': '1',
 'name': 'username',
 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac',
 'password': 'YA+QQcIh0U+tv3XEBjVN5elLcKn2DKvoJqN578vyZyc6dy+iuO2NJWVxecuqtqFvrpS4aSqUOIYv62vXhdtg10WkaIU+ZSDZJ6uNJ8g4A3EbMmDZlKrkfHuFky0wJlxtRTqSG9LmiqPrwWZ03QPkzkiWwyDe/GewrBYGUdDklks=',
 'projectDesc': '接口创建项目：projectName为空',
 'projectName': '',
 'pullFileName': '',
 'ruleSetId': '',
 'tag': '',
 'type': '1',
 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git',
 'urlHead': '0'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:273 验签拼接参数：
%sauthenticationMethod=0&branch=main&gitType=3&language=1&name=username&orgUuid=00a7b33e-f075-4758-9ef0-d1bb989748ac&password=YA+QQcIh0U+tv3XEBjVN5elLcKn2DKvoJqN578vyZyc6dy+iuO2NJWVxecuqtqFvrpS4aSqUOIYv62vXhdtg10WkaIU+ZSDZJ6uNJ8g4A3EbMmDZlKrkfHuFky0wJlxtRTqSG9LmiqPrwWZ03QPkzkiWwyDe/GewrBYGUdDklks=&projectDesc=接口创建项目：projectName为空&type=1&url=http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git&urlHead=0&eyJhbGciOiJIUzUxMiJ9.eyJub25jZSI6ImY1NGUwNmVmLTZiYTEtNGZmZS1iMzBlLTc1OThkZTJjZTVkOSIsInN1YiI6ImZiOWQ2MDMyLWUzZmYtNDM1Ny04YzQyLTE4YTE3ZmQ4NTViZiJ9.jZebMQ9qWi7f_X_TVUPhhpdT2O7bOoPTVZQb9PLmFVxEw4lZACJtsliyJFppRXcr3eQU6AewgSPbO-EAqSmHOA&1732171619222&crx123456

[31m[1mERROR   [0m ERROR:CodeSecTool.py:274 返回内容：
{'code': 'B500',
 'message': 'projectName：该字段不能为空。, 项目名称必须由2-512个字符组成。',
 'status': False}</pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">
请求接口：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo 
请求头：{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf', 'x-cs-timestamp': '1732171619166', 'x-cs-nonce': 'crx123456', 'x-cs-signature': '784e00ff74c21a681d4631e9dcea090921e42817d380b370b33bdbe8634bb04e', 'lang': 'zh-CN'}
请求参数：{'projectName': '', 'gitType': '3', 'authenticationMethod': '0', 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git', 'projectDesc': '接口创建项目：projectName为空', 'urlHead': '0', 'isTokenEncrypt': '', 'branch': 'main', 'tag': '', 'checkCommitId': '', 'commitId': '', 'extraMark': '', 'fileFilter': '', 'callBackUrl': '', 'language': '1', 'type': '1', 'isOpenDepend': '', 'depotId': '', 'pullFileName': '', 'ruleSetId': '', 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac', 'fastScan': '', 'isIncrScan': '', 'name': 'username', 'password': 'YA+QQcIh0U+tv3XEBjVN5elLcKn2DKvoJqN578vyZyc6dy+iuO2NJWVxecuqtqFvrpS4aSqUOIYv62vXhdtg10WkaIU+ZSDZJ6uNJ8g4A3EbMmDZlKrkfHuFky0wJlxtRTqSG9LmiqPrwWZ03QPkzkiWwyDe/GewrBYGUdDklks='}
响应：{'status': False, 'code': 'B500', 'message': 'projectName：该字段不能为空。, 项目名称必须由2-512个字符组成。'}
</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            
            <tr >


                <td>6</td>
                <td class="caseexternaApitest_createProjectByGitInfopy">case\externaApi\test_createProjectByGitInfo.py</td>
                <td>TestCodeSecAPI.test_createProjectByGitInfo</td>
                <td>projectName_toolong:513</td>
                <td>0.100203</td>
                
                    
                    <td class="text-success">通过</td>
                    
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px">[31m[1mERROR   [0m ERROR:CodeSecTool.py:262 --------------------------------------------------请求错误：项目名称必须由2-512个字符组成。--------------------------------------------------
[31m[1mERROR   [0m ERROR:CodeSecTool.py:269 请求url：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo
[31m[1mERROR   [0m ERROR:CodeSecTool.py:270 请求头：
{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf',
 'lang': 'zh-CN',
 'x-cs-nonce': 'crx123456',
 'x-cs-signature': 'd0ee56e86654423bb0827efea50770594c6423f1279fba399d27146d02ad6cb8',
 'x-cs-timestamp': '1732171619268'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:271 请求参数：
{'authenticationMethod': '0',
 'branch': 'main',
 'callBackUrl': '',
 'checkCommitId': '',
 'commitId': '',
 'depotId': '',
 'extraMark': '',
 'fastScan': '',
 'fileFilter': '',
 'gitType': '3',
 'isIncrScan': '',
 'isOpenDepend': '',
 'isTokenEncrypt': '',
 'language': '1',
 'name': 'username',
 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac',
 'password': 'hWg8FywIfhSwvuSvn2HsqQ8pQd6qRXynJX3WFsO6el3VJR3PNstRMHjPpqGI1H9/9uF5wkAcnV8rekIUY12xXSrafwgAs2atn7+UEuJF6sxUUSYAccZ+2R/IKMo/Kh5Uvjm7iQQ8dRuEd/bQ60xYuFch6asTBNOTK9C5CmMu6xY=',
 'projectDesc': '接口创建项目：projectName超长：513个字符',
 'projectName': '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567895555512345123',
 'pullFileName': '',
 'ruleSetId': '',
 'tag': '',
 'type': '1',
 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git',
 'urlHead': '0'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:273 验签拼接参数：
%sauthenticationMethod=0&branch=main&gitType=3&language=1&name=username&orgUuid=00a7b33e-f075-4758-9ef0-d1bb989748ac&password=hWg8FywIfhSwvuSvn2HsqQ8pQd6qRXynJX3WFsO6el3VJR3PNstRMHjPpqGI1H9/9uF5wkAcnV8rekIUY12xXSrafwgAs2atn7+UEuJF6sxUUSYAccZ+2R/IKMo/Kh5Uvjm7iQQ8dRuEd/bQ60xYuFch6asTBNOTK9C5CmMu6xY=&projectDesc=接口创建项目：projectName超长：513个字符&projectName=012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567895555512345123&type=1&url=http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git&urlHead=0&eyJhbGciOiJIUzUxMiJ9.eyJub25jZSI6ImY1NGUwNmVmLTZiYTEtNGZmZS1iMzBlLTc1OThkZTJjZTVkOSIsInN1YiI6ImZiOWQ2MDMyLWUzZmYtNDM1Ny04YzQyLTE4YTE3ZmQ4NTViZiJ9.jZebMQ9qWi7f_X_TVUPhhpdT2O7bOoPTVZQb9PLmFVxEw4lZACJtsliyJFppRXcr3eQU6AewgSPbO-EAqSmHOA&1732171619322&crx123456

[31m[1mERROR   [0m ERROR:CodeSecTool.py:274 返回内容：
{'code': 'B500', 'message': '项目名称必须由2-512个字符组成。', 'status': False}</pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">
请求接口：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo 
请求头：{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf', 'x-cs-timestamp': '1732171619268', 'x-cs-nonce': 'crx123456', 'x-cs-signature': 'd0ee56e86654423bb0827efea50770594c6423f1279fba399d27146d02ad6cb8', 'lang': 'zh-CN'}
请求参数：{'projectName': '012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567895555512345123', 'gitType': '3', 'authenticationMethod': '0', 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git', 'projectDesc': '接口创建项目：projectName超长：513个字符', 'urlHead': '0', 'isTokenEncrypt': '', 'branch': 'main', 'tag': '', 'checkCommitId': '', 'commitId': '', 'extraMark': '', 'fileFilter': '', 'callBackUrl': '', 'language': '1', 'type': '1', 'isOpenDepend': '', 'depotId': '', 'pullFileName': '', 'ruleSetId': '', 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac', 'fastScan': '', 'isIncrScan': '', 'name': 'username', 'password': 'hWg8FywIfhSwvuSvn2HsqQ8pQd6qRXynJX3WFsO6el3VJR3PNstRMHjPpqGI1H9/9uF5wkAcnV8rekIUY12xXSrafwgAs2atn7+UEuJF6sxUUSYAccZ+2R/IKMo/Kh5Uvjm7iQQ8dRuEd/bQ60xYuFch6asTBNOTK9C5CmMu6xY='}
响应：{'status': False, 'code': 'B500', 'message': '项目名称必须由2-512个字符组成。'}
</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            
            <tr >


                <td>7</td>
                <td class="caseexternaApitest_createProjectByGitInfopy">case\externaApi\test_createProjectByGitInfo.py</td>
                <td>TestCodeSecAPI.test_createProjectByGitInfo</td>
                <td>projectName_tooshort</td>
                <td>0.099035</td>
                
                    
                    <td class="text-success">通过</td>
                    
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px">[31m[1mERROR   [0m ERROR:CodeSecTool.py:262 --------------------------------------------------请求错误：项目名称必须由2-512个字符组成。--------------------------------------------------
[31m[1mERROR   [0m ERROR:CodeSecTool.py:269 请求url：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo
[31m[1mERROR   [0m ERROR:CodeSecTool.py:270 请求头：
{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf',
 'lang': 'zh-CN',
 'x-cs-nonce': 'crx123456',
 'x-cs-signature': '59f21ed08fd6a22cbcbd23181fe703d420bc600bbbd009238b8ed87c723d5a76',
 'x-cs-timestamp': '1732171619368'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:271 请求参数：
{'authenticationMethod': '0',
 'branch': 'main',
 'callBackUrl': '',
 'checkCommitId': '',
 'commitId': '',
 'depotId': '',
 'extraMark': '',
 'fastScan': '',
 'fileFilter': '',
 'gitType': '3',
 'isIncrScan': '',
 'isOpenDepend': '',
 'isTokenEncrypt': '',
 'language': '1',
 'name': 'username',
 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac',
 'password': 'g9Q7AAtjbw2AZ8SSbWvAxbFdVN4CEwQHtSuUx6/US7mEXiIjeN4FBjIAagHJ9JaUGboLhaUXHRtXCc7Q88vos6uy96L7WbYuB5UoZw5dR6SGr54Y2Ds0zwcVCwfUoagT6ro1+JRS0cRqkXhQpxHhGD3zCHSt/lCm2glk6QNzaQg=',
 'projectDesc': '接口创建项目：projectName过短',
 'projectName': '1',
 'pullFileName': '',
 'ruleSetId': '',
 'tag': '',
 'type': '1',
 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git',
 'urlHead': '0'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:273 验签拼接参数：
%sauthenticationMethod=0&branch=main&gitType=3&language=1&name=username&orgUuid=00a7b33e-f075-4758-9ef0-d1bb989748ac&password=g9Q7AAtjbw2AZ8SSbWvAxbFdVN4CEwQHtSuUx6/US7mEXiIjeN4FBjIAagHJ9JaUGboLhaUXHRtXCc7Q88vos6uy96L7WbYuB5UoZw5dR6SGr54Y2Ds0zwcVCwfUoagT6ro1+JRS0cRqkXhQpxHhGD3zCHSt/lCm2glk6QNzaQg=&projectDesc=接口创建项目：projectName过短&projectName=1&type=1&url=http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git&urlHead=0&eyJhbGciOiJIUzUxMiJ9.eyJub25jZSI6ImY1NGUwNmVmLTZiYTEtNGZmZS1iMzBlLTc1OThkZTJjZTVkOSIsInN1YiI6ImZiOWQ2MDMyLWUzZmYtNDM1Ny04YzQyLTE4YTE3ZmQ4NTViZiJ9.jZebMQ9qWi7f_X_TVUPhhpdT2O7bOoPTVZQb9PLmFVxEw4lZACJtsliyJFppRXcr3eQU6AewgSPbO-EAqSmHOA&1732171619423&crx123456

[31m[1mERROR   [0m ERROR:CodeSecTool.py:274 返回内容：
{'code': 'B500', 'message': '项目名称必须由2-512个字符组成。', 'status': False}</pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">
请求接口：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo 
请求头：{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf', 'x-cs-timestamp': '1732171619368', 'x-cs-nonce': 'crx123456', 'x-cs-signature': '59f21ed08fd6a22cbcbd23181fe703d420bc600bbbd009238b8ed87c723d5a76', 'lang': 'zh-CN'}
请求参数：{'projectName': '1', 'gitType': '3', 'authenticationMethod': '0', 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git', 'projectDesc': '接口创建项目：projectName过短', 'urlHead': '0', 'isTokenEncrypt': '', 'branch': 'main', 'tag': '', 'checkCommitId': '', 'commitId': '', 'extraMark': '', 'fileFilter': '', 'callBackUrl': '', 'language': '1', 'type': '1', 'isOpenDepend': '', 'depotId': '', 'pullFileName': '', 'ruleSetId': '', 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac', 'fastScan': '', 'isIncrScan': '', 'name': 'username', 'password': 'g9Q7AAtjbw2AZ8SSbWvAxbFdVN4CEwQHtSuUx6/US7mEXiIjeN4FBjIAagHJ9JaUGboLhaUXHRtXCc7Q88vos6uy96L7WbYuB5UoZw5dR6SGr54Y2Ds0zwcVCwfUoagT6ro1+JRS0cRqkXhQpxHhGD3zCHSt/lCm2glk6QNzaQg='}
响应：{'status': False, 'code': 'B500', 'message': '项目名称必须由2-512个字符组成。'}
</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            
            <tr >


                <td>8</td>
                <td class="caseexternaApitest_createProjectByGitInfopy">case\externaApi\test_createProjectByGitInfo.py</td>
                <td>TestCodeSecAPI.test_createProjectByGitInfo</td>
                <td>projectName_onlyspace</td>
                <td>0.106637</td>
                
                    
                    <td class="text-success">通过</td>
                    
                
                <td>
                    <button type="button" class="btn btn-success btn_info">查看详情</button>
                </td>
            </tr>
            <tr class="test_log">
                <td colspan="7" class="small text-muted" style=" word-wrap:break-word; word-break:break-all;padding: 0">
                    <div class="card">
                        <div class="card-body">
                            <ul class="nav nav-tabs" role="tablist">
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link active" data-toggle="tab" role="tab" aria-controls="home"
                                       aria-selected="true" style="padding: 0 16px">运行日志</a>
                                </li>
                                <li class="nav-item" role="presentation">
                                    <a class="nav-link" data-toggle="tab" role="tab" aria-controls="profile"
                                       aria-selected="false" style="padding: 0 16px">调试输出</a>
                                </li>
                                
                                

                            </ul>
                            <div class="tab-content" style="height: 300px;overflow-y: auto;padding: 20px">

                                <div class="tab-pane fade show active" role="tabpanel" aria-labelledby="profile-tab">
                                    <pre style="line-height: 18px">[31m[1mERROR   [0m ERROR:CodeSecTool.py:262 --------------------------------------------------请求错误：projectName：该字段不能为空。--------------------------------------------------
[31m[1mERROR   [0m ERROR:CodeSecTool.py:269 请求url：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo
[31m[1mERROR   [0m ERROR:CodeSecTool.py:270 请求头：
{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf',
 'lang': 'zh-CN',
 'x-cs-nonce': 'crx123456',
 'x-cs-signature': 'e7424d2e0fb20ef0818bef3db6a9c871be0f114575f4d4a64ffb52a9883bf9d1',
 'x-cs-timestamp': '1732171619470'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:271 请求参数：
{'authenticationMethod': '0',
 'branch': 'main',
 'callBackUrl': '',
 'checkCommitId': '',
 'commitId': '',
 'depotId': '',
 'extraMark': '',
 'fastScan': '',
 'fileFilter': '',
 'gitType': '3',
 'isIncrScan': '',
 'isOpenDepend': '',
 'isTokenEncrypt': '',
 'language': '1',
 'name': 'username',
 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac',
 'password': 'Lm9LL2C+cl61+ORCEqBMKvpQiACJmAUzYnNUibUQfVTGM/RJn5fJEgC8PWBvvbeb8EUmHuC9F6dbz5ZPGHaEgqJ8XDCpW7n+yXmYj2BwQRwzarvnP7pKsGoBaBpQxUfuM/pDuLF+RG4c5jI0IRhPyxpHC2i+yII4xrEfxoGF3Vo=',
 'projectDesc': '接口创建项目：projectName只有空格',
 'projectName': '   ',
 'pullFileName': '',
 'ruleSetId': '',
 'tag': '',
 'type': '1',
 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git',
 'urlHead': '0'}

[31m[1mERROR   [0m ERROR:CodeSecTool.py:273 验签拼接参数：
%sauthenticationMethod=0&branch=main&gitType=3&language=1&name=username&orgUuid=00a7b33e-f075-4758-9ef0-d1bb989748ac&password=Lm9LL2C+cl61+ORCEqBMKvpQiACJmAUzYnNUibUQfVTGM/RJn5fJEgC8PWBvvbeb8EUmHuC9F6dbz5ZPGHaEgqJ8XDCpW7n+yXmYj2BwQRwzarvnP7pKsGoBaBpQxUfuM/pDuLF+RG4c5jI0IRhPyxpHC2i+yII4xrEfxoGF3Vo=&projectDesc=接口创建项目：projectName只有空格&projectName=   &type=1&url=http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git&urlHead=0&eyJhbGciOiJIUzUxMiJ9.eyJub25jZSI6ImY1NGUwNmVmLTZiYTEtNGZmZS1iMzBlLTc1OThkZTJjZTVkOSIsInN1YiI6ImZiOWQ2MDMyLWUzZmYtNDM1Ny04YzQyLTE4YTE3ZmQ4NTViZiJ9.jZebMQ9qWi7f_X_TVUPhhpdT2O7bOoPTVZQb9PLmFVxEw4lZACJtsliyJFppRXcr3eQU6AewgSPbO-EAqSmHOA&1732171619530&crx123456

[31m[1mERROR   [0m ERROR:CodeSecTool.py:274 返回内容：
{'code': 'B500', 'message': 'projectName：该字段不能为空。', 'status': False}</pre>
                                </div>
                                <div class="tab-pane fade" role="tabpanel" aria-labelledby="contact-tab">
                                    <pre style="line-height: 18px">
请求接口：http://192.168.2.74:5001/cs/api/v4/project/createProjectByGitInfo 
请求头：{'accessKey': 'fb9d6032-e3ff-4357-8c42-18a17fd855bf', 'x-cs-timestamp': '1732171619470', 'x-cs-nonce': 'crx123456', 'x-cs-signature': 'e7424d2e0fb20ef0818bef3db6a9c871be0f114575f4d4a64ffb52a9883bf9d1', 'lang': 'zh-CN'}
请求参数：{'projectName': '   ', 'gitType': '3', 'authenticationMethod': '0', 'url': 'http://192.168.2.77:9010/heyaohua/audit_whitelistdemo.git', 'projectDesc': '接口创建项目：projectName只有空格', 'urlHead': '0', 'isTokenEncrypt': '', 'branch': 'main', 'tag': '', 'checkCommitId': '', 'commitId': '', 'extraMark': '', 'fileFilter': '', 'callBackUrl': '', 'language': '1', 'type': '1', 'isOpenDepend': '', 'depotId': '', 'pullFileName': '', 'ruleSetId': '', 'orgUuid': '00a7b33e-f075-4758-9ef0-d1bb989748ac', 'fastScan': '', 'isIncrScan': '', 'name': 'username', 'password': 'Lm9LL2C+cl61+ORCEqBMKvpQiACJmAUzYnNUibUQfVTGM/RJn5fJEgC8PWBvvbeb8EUmHuC9F6dbz5ZPGHaEgqJ8XDCpW7n+yXmYj2BwQRwzarvnP7pKsGoBaBpQxUfuM/pDuLF+RG4c5jI0IRhPyxpHC2i+yII4xrEfxoGF3Vo='}
响应：{'status': False, 'code': 'B500', 'message': 'projectName：该字段不能为空。'}
</pre>
                                </div>
                                
                                


                            </div>
                        </div>
                    </div>
                </td>
            </tr>
            

            </tbody>
        </table>
    </div>

    <div style="height: 200px"></div>
</div>


<script>
    var tbodyTr = $('tbody tr');
    var testResult = $("#testResult");
    var testClass = $("#testClass");
    <!--    用例执行详细信息显示切换-->
    $(".btn_info").click(function () {
        $(this).parent().parent().next().toggle();

    });
    // 当选择用例类之后触发
    testClass.change(function () {
        var cls = $(this).val();
        var res = testResult.val();
        elementDisplay(cls, res);
        sort()
    });
    testResult.change(function () {
        var res = $(this).val();
        var cls = testClass.val();
        elementDisplay(cls, res);
        sort()
    });

    function elementDisplay(cls, res) {
        // 用例数据的显示
        if (cls === "所有") {
            if (res === "所有") {
                tbodyTr.has('button').show();
            } else if (res === '成功') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-success').show()

            } else if (res === '失败') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-warning').show()

            } else if (res === '错误') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-danger').show()

            } else if (res === '跳过') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.text-info').show()
            }
        } else {
            if (res === "所有") {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').show()
            } else if (res === '成功') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-success').show()
            } else if (res === '失败') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-warning').show()
            } else if (res === '错误') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-danger').show()
            } else if (res === '跳过') {
                tbodyTr.hide();
                tbodyTr.has('button').has('.' + cls + '').has('.text-info').show()
            }
        }
    }

    function sort() {
        //重新排列显示序号
        // 选择所有可以见的tr
        var visibleTr = tbodyTr.filter(":visible");

        visibleTr.each(function (index, element) {
            element.firstElementChild.innerHTML = index + 1;

        })

    }

    $('.nav-tabs li').click(function () {
        $(this).find('a').addClass('active')
        $(this).siblings().find('a').removeClass('active');
        $(this).parent().next().children('.tab-content div').eq($(this).index()).addClass('active show').siblings().removeClass('active show')
    });
</script>

<script type="text/javascript">
    // 基于准备好的dom，初始化echarts实例
    var myChart = echarts.init(document.getElementById('char'));
    var myChart2 = echarts.init(document.getElementById('char2'));
    // 指定图表的配置项和数据
    option = {
        color: ['#00a10a', '#ddb518', 'rgba(204,46,41,0.73)', '#85898c'],
        tooltip: {
            trigger: 'item',
            formatter: '{a} <br/>{b}: {c} ({d}%)'
        },
        legend: {
            orient: 'vertical',
            left: 10,
            data: ['通过', '失败', '错误', '跳过']
        },
        series: [
            {
                name: '测试结果',
                type: 'pie',
                radius: ['50%', '70%'],
                avoidLabelOverlap: false,
                label: {
                    show: false,
                    position: 'center'
                },
                emphasis: {
                    label: {
                        show: true,
                        fontSize: '30',
                        fontWeight: 'bold'
                    }
                },
                labelLine: {
                    show: false
                },
                data: [
                    {value: 6, name: '通过'},
                    {value: 2, name: '失败'},
                    {value: 0, name: '错误'},
                    {value: 0, name: '跳过'}
                ]
            }
        ]
    };
    option2 = {
        tooltip: {
            formatter: '{a} <br/>{b} : {c}%'
        },
        toolbox: {
            feature: {
                restore: {},
                saveAsImage: {}
            }
        },
        series: [
            {
                name: '测试结果',
                type: 'gauge',
                detail: {formatter: '75.00%'},
                data: [{value: '75.00', name: '用例通过率'}],
                axisLine: {
                    lineStyle: {
                        color: [
                            [0.2, '#c20000'],
                            [0.8, '#ddb518'],
                            [1, '#00a10a']]
                    }
                }
            }
        ]
    };


    myChart2.setOption(option2);
    // 使用刚指定的配置项和数据显示图表。
    myChart.setOption(option);
</script>


</body>
</html>